---@class Table_LanguageItem
local Table_LanguageItem = BaseClass("Table_LanguageItem", IDataItem)

function Table_LanguageItem:__ctor()
	---@type number @唯一ID
	self.Id = 0
	---@type string @显示字符串
	self.StrDictionary = ""
end

function Table_LanguageItem:Load(reader)
	self.temp = reader:ReadShortString()
	self.Id = tonumber(self.temp)
	self.StrDictionary = reader:ReadString()
end

---@class Table_LanguageMgr : IDataMgr
local this = BaseClass("Table_LanguageMgr", IDataMgr)

function this:FileName()
	return "Txt/Language.txt"
end

---@return Table_LanguageItem
function this:GetItemByKey(key)
	return self.super.GetItemByKey(self, key)
end

---@return Table_LanguageItem
function this:GetItemByIdx(idx)
	return self.super.GetItemByIdx(self, idx)
end

function this:Load(reader)
	local item = Table_LanguageItem()
	item:Load(reader)
	self.mItemDic[item.Id] = self.mDataCount
	table.insert(self.mItemList, item)
end

---@type Table_LanguageMgr
Table_LanguageMgr = this()